Method for simulating a technical system and simulator

ABSTRACT

A specifically designed buffer store ( 35 ) is used in a method according to the invention for simulation of a technical system, from which auxiliary result values (H 1 , H 2 ) of an auxiliary function ( 25 ) are read specifically when current values of calling parameters (s 1 , s 2 , s′ 1 , s′ 2 ) of the auxiliary function ( 25 ) match correspondingly stored values of the calling parameters.  
     A simulator ( 60 ) according to the invention has a correspondingly specifically designed buffer store ( 35 ).  
     The method according to the invention and the simulator according to the invention are in this case based on the discovery that, in many cases, a technical system can be described by a state description which comprises an auxiliary function two or more times and, in particular, with the auxiliary function depending only on some of the state variables of the technical system. This makes it possible to replace a large number of calculations of auxiliary result values of the auxiliary function during the numerical simulation of a technical system by specific reading of auxiliary result values from the buffer store ( 35 ).

This application is the national phase under 35 U.S.C. § 371 of PCTInternational Application No. PCT/EP03/01865 which has an Internationalfiling date of Feb. 24, 2003, which designated the United States ofAmerica and which claims priority on German Patent Application number EP02005437.5 filed Mar. 8, 2002, the entire contents of which are herebyincorporated herein by reference.

FIELD OF THE INVENTION

The invention generally relates to a method and a simulator forsimulation of a technical system, in particular of a power station.

BACKGROUND OF THE INVENTION

In many applications, it is desirable to have a mathematicalrepresentation of a technical system in order, for example, to make itpossible to predict the operating states of the technical system whichcan be expected in real conditions. For example, it is thus possible todesign and to test a regulator for the technical system without havingto intervene in a real technical system in the process, even during thedesign phase, which could lead to an adverse effect and/or to a hazardduring real operation.

Furthermore, a simulator can be used to simulate operating states of thetechnical system, for example dangerous operating states, which can beproduced in the real technical system only with great complexity or evenby accepting a risk. Simulators of technical systems can be usedadvantageously in order to train the operators, who are intended tooperate the technical system, in all the operating modes which can beexpected, in advance. As such, the operator need not wait to learn howto operate the technical system until faced with real operation.

In order to produce a simulator on a computer, it is necessary todescribe the technical system mathematically. Most technical systems canbe described by a generally non-linear, higher-order differentialequation.

In order to make it possible to simulate the time response on thetechnical system on a computer, this higher-order differential equationmust be solved. Many known simulators and simulation programs use theso-called state space description, which is equivalent to this, in orderto solve this multidimensional differential equation.

In this case, the multidimensional differential equation which is, forexample, an n-th order differential equation is changed to n first-orderdifferential equations. The equivalence between the n-dimensionaldifferential equations and the n first-order differential equations isknown sufficiently as a state space description, in particular incontrol engineering literature.

A state space description such as this includes, for example, thefollowing state equation:x′=f(x,t),where x denotes the so-called state vector, t the time and x′ the timederivative of the state vector x. The function f in this case describesthe system dynamics and may also, in general, be non-linear. If thetechnical system is a so-called time-invariant system, that is to saythe system characteristics do not change with time, then thedifferential equations which describe the system have constantcoefficients.

If the intrinsic values of the technical system have magnitudes whichdiffer to a very great extent from one another, then the expression“stiff” is used for the differential equations which describe thesystem.

Intrinsic system values such as these which have widely differingmagnitudes and differ, for example, by two or more orders of magnitude,mathematically describe so-called natural oscillations of the system,whose frequencies differ widely from one another. Thus, in this case,dynamic processes take place on different time axes within the system,for example processes at a low natural frequency on a macro time axis,with processes having a high natural frequency being superimposed on amicro time axis.

The solution to such “stiff” differential equations (that is to saysystems with natural oscillations at widely differing frequencies) inparticular requires the use of particularly stable numerical solutionalgorithms.

A range of numerical solution algorithms are known, for example thesemi-implicit Euler method or the Rosenbrock method. These knownsolution algorithms particularly represent stable numerical integrationmethods, especially for solving the stated “stiff”, differentialequation systems.

Virtually all known numerical solution algorithms calculate theso-called Jacobi matrix of the function f when solving the differentialequations, with the Jacobi matrix including the partial derivatives ofeach vector component of f, in each case based on all the components ofthe state vector x.

The calculation of the Jacobi matrix in each simulation step leads tolong computation times, particularly in the case of multidimensionaltechnical systems, since the partial derivatives must be approximated byuse of difference quotients in a number of steps.

By way of example, technical systems are modeled by the use of dynamicdiagrams in the known Matlab/Simulink software program package. Diagramssuch as these include an integrator, adder, multiplier and functionblocks (=imaging rules based, for example, on mathematical operationsfor calculation of output signals from input signals which are appliedto the function block).

Numerical differentiation in order to determine the Jacobi matrixrequires that one component of the state vector be varied by an amount Ain each case successively in order to calculate a difference quotient,which approximates to the differentiation, in one simulation step, withthe other components of the state vector each being fixed during thisprocess, and the dynamic diagram being passed through once again. Forexample, in the case of a system whose order is 100 and whose dynamicdiagram in consequence has 100 integrators, this means that this dynamicdiagram must be passed through 100 times once again during onesimulation step, with one other component of the state vector beingvaried by an amount Δ in each new run, so that the Jacobi matrix whichis required to solve the differential equation system is approximated bythe use of the difference quotients determined in this way.

This involves an enormous computation time requirement in eachsimulation step.

SUMMARY OF THE INVENTION

An embodiment of the invention therefore may include an object ofspecifying a method and a simulator for a numerical simulation of atechnical system which operate economically and can be used flexibly,particularly with regard to the computation time required forsimulation.

With regard to the method, an object may be achieved according to anembodiment of the invention by a method for numerical simulation of atechnical system in a number of simulation steps, with the technicalsystem being described by a state description which includes statevariables for the technical system, with its Jacobi matrix being used tosolve the state description, and with the state description having atleast one auxiliary function which is evaluated a number of timesrepeatedly in each simulation step, and with each simulation stepincluding the following simulation steps:

-   a) the auxiliary function is evaluated two or more times    corresponding to a dynamic diagram which represents the technical    system, and the values of the respective calling parameters of the    auxiliary function and the respectively associated auxiliary result    value for each evaluation are stored in a buffer store,-   b) the current value of each state variable is varied successively    by a magnitude value while keeping the values of the other state    variables constant, and the auxiliary function is evaluated two or    more times once again on the basis of the dynamic diagram, with each    evaluation comprising a calculation of the respective auxiliary    result value if the values of the calling parameters of the current    evaluation do not match the values of the calling parameters stored    in the buffer store, and comprises reading of the auxiliary result    value which is associated with the values of the calling parameters    of the current evaluation from the buffer store if the values of the    calling parameters for the current evaluation match the values of    the calling parameters which are stored in the buffer store, and-   c) the Jacobi matrix is determined by means of the auxiliary result    values obtained in step b).

An embodiment of the invention may include an idea that, in a largenumber of technical systems, for example in the case of power stations,the state description of these systems includes at least one auxiliaryfunction which is called repeatedly in order to evaluate the statedescription in the dynamic diagram. This specific configuration of thestate description is typical of technical systems. The method accordingto an embodiment of the invention makes use of this discovery in thatthe multiple evaluation of the at least one auxiliary function duringthe evaluation of the state description is replaced (instead ofrecalculating it repeatedly) by specific reading of already calculatedresults from a buffer store.

Particularly when calculating partial derivatives in the statedescription on the basis of the state variables in order to determinethe Jacobi matrix, the multiple runs through the dynamic diagram whichare required mean that the auxiliary function must be evaluated manytimes. Since the calculation of the partial derivatives is carried outnumerically by way of difference quotients, the value of one statevariable is in each case varied slightly in order to calculate eachelement of the Jacobi matrix, while the values of the other statevariables are kept constant and the dynamic diagram is passed throughonce again, with the auxiliary function being evaluated a number oftimes during each run on the basis of the frequency of its occurrence inthe state description of the technical system.

As can easily be seen, a large number of repeated evaluations of theauxiliary function are generally carried out in order to determine theJacobi matrix in each simulation step, in which case their callingparameters often do not change since—as already mentioned—only one statevariable is in each case varied in order to calculate the stateddifference quotients. For example, the calling parameters do not changeduring the repeated evaluation of the auxiliary function, if theauxiliary function is dependent only on a first and on a second statevariable, but only a third state variable is being varied in thatparticular calculation step.

If now, as provided in the method according to an embodiment of theinvention—the calling parameters and the associated auxiliary resultvalue of the auxiliary function are stored in a buffer store, then analready previously calculated auxiliary result value can be readspecifically from the buffer store instead of recalculating thatauxiliary result value, provided that the current calling parameters forthe auxiliary function are identical to the stored calling parameters.

One example of an auxiliary function which must be evaluated repeatedlyis a so-called water/steam table from the field of power stationtechnology. Thus, for example, 25 or more evaluations of an auxiliaryfunction which describes the temperature of a flow medium as a functionof the pressure and enthalpy can be provided in the state description ofa power station system. This multiple evaluation must then be carriedout repeatedly in each simulation step since a series of runs throughthe dynamic diagram are required when calculating the Jacobi matrix bythe already mentioned sequential variation of only one state variable;the number of runs required in this case corresponds at least to thenumber of components of the state vector.

In trials, it has been found that the method according to an embodimentof the invention for the simulation of common technical systems in somecases allows more than 90% of the recalculations of the auxiliaryfunction to be replaced by specific reading of an already previouslycalculated result from the buffer store.

A number of values of calling parameters and a respectively associatedauxiliary result value are advantageously stored in the buffer store.This number corresponds to the number of evaluations of the auxiliaryfunction which are carried out on the basis of the dynamic diagram instep a).

When listing the calling arguments of the auxiliary function which occurin the course of a numerical simulation, a situation often occurs inwhich there is a periodicity with which the majority of the values ofthe calling arguments of the auxiliary function are thus repeated inrenewed evaluations, since the sequential variation of only one statevariable during a simulation step leaves the calling parameters of theauxiliary function unchanged, provided that the auxiliary function doesnot depend on the state variable that has been varied at that time. Thisin fact just means that knowledge of the calling arguments of theauxiliary function for one period is sufficient in order to make itpossible to indicate a current function value for the auxiliary functionfor a current time, without needing to calculate the auxiliary function.

Instead of this, it is sufficient to specifically read the desiredauxiliary result value from the buffer store. If the dynamic diagramnow, for example, includes the auxiliary function n-times, then thecorresponding n sets of calling parameters and the respectivelyassociated auxiliary result value are stored in the buffer store. When astate variable is varied in order to calculate one element of the Jacobimatrix, then the dynamic diagram is now run through repeatedly, and theauxiliary function is in each case evaluated n-times in the process. Inthis case, as already mentioned, the values of the calling parametersoften do not change, since the auxiliary function generally depends ononly some of the state variables. In this case, the calculation of theauxiliary function may be replaced by specific reading of an alreadycalculated auxiliary result value which is associated with one of the nstored calling parameters.

An embodiment of the invention makes use of the stated periodicity inorder to render most of the time-consuming evaluations of the auxiliaryfunction superfluous and to replace them by specific reading from thespecifically designed buffer store.

It is also advantageous for the number of values of the callingparameters and the respectively associated auxiliary result value to bestored in the buffer store in a sequence which corresponds to thedefined evaluation sequence. The expression the number of values of thecalling parameters in this case means the number of sets of callingparameters, when the auxiliary function comprises two or more—that is tosay a set of—calling parameters.

The state variables are varied successively in order to determine theelements of the Jacobi matrix. Further, the dynamic diagram is runthrough completely after each of these variations, so that the at leastone auxiliary function is calculated a number of times, in the definedevaluation sequence, in each of these runs. This defined evaluationsequence remains the same, of course, in each run through the dynamicdiagram.

In this refinement of an embodiment of the invention, the callingparameters and the respectively associated auxiliary result value of theat least one auxiliary function are now stored in the buffer store inthe sequence corresponding to the defined evaluation sequence of theauxiliary function. Since the evaluation sequence does not change whenrepeated runs are made through the dynamic diagram, it is immediatelyclear on the basis of the evaluation sequence when calculating theauxiliary function which memory entry in the buffer store the currentcalling parameters of the auxiliary function must be compared with inorder, if necessary, to make it possible to read an already previouslycalculated auxiliary result value from the buffer store, instead ofhaving to calculate it (assuming that the current calling parameterscorrespond to the stored calling parameters in the appropriate bufferstore entry).

If, for example, three function blocks are provided for the auxiliaryfunction in the dynamic diagram, the auxiliary function must thereforebe evaluated three times during one run through the dynamic diagram.These function blocks are processed successively, for example on thebasis of a graphical representation of the dynamic diagram. Further, thecorresponding calling parameters and the respective auxiliary resultvalue of the auxiliary function are stored in precisely this evaluationsequence in the buffer store.

When another run is made through the dynamic diagram with one statevariable having been varied, the function blocks which represent theauxiliary function are processed in the same defined evaluationsequence. For a comparison of the current calling parameters for afunction block which represents the auxiliary function, a comparison canbe carried out immediately with the corresponding entry in the bufferstore, without having to search through the buffer store.

The stated comparison strategy can be provided, for example, insoftware. For example, this can be done by providing the buffer storewith a so-called pointer which, at the start of the run through thedynamic diagram, initially points at a first memory entry in the bufferstore (which, of course, may be empty when the method is restarted) andwhich, during the processing of a next function block which representsthe auxiliary function, is then set to a next memory entry in the bufferstore.

While a function block which represents the auxiliary function isactually being evaluated, the current calling parameters can now bespecifically compared with those calling parameters which are marked bythe current position of the pointer. If the current calling parametersand the stored calling parameters which are marked by the pointer match,then the current auxiliary result value need not be calculated, and itis sufficient to read the auxiliary result value covered by the markedmemory entry in the buffer store.

After a complete run through the dynamic diagram, the pointer is thenonce again set to the first memory position in the buffer store, andanother run through the dynamic diagram may take place. In softwareterms, the pointer thus has a cyclic behavior so that, during a runthrough the dynamic diagram, it moves from one memory entry in thebuffer store to the respective next memory entry, corresponding to themultiple evaluation of the auxiliary function, until the last memoryentry is reached. When another run through the dynamic diagram takesplace, the pointer is then once again reset to the first memory entry.

During each multiple evaluation of the auxiliary function in step b) ofthe method according to an embodiment of the invention, the currentvalues of the calling parameters are advantageously compared with thecorresponding values of the calling parameters stored in the bufferstore.

This comparison can be carried out very efficiently since the entries inthe buffer store are in the defined evaluation sequence and it is thuspossible, for example, to use the software pointer mentioned above tospecifically access one memory entry in the buffer store, without havingto search through the buffer store.

An embodiment of the invention also leads to a simulator for simulationof a technical system in a number of simulation steps, with thetechnical system being described by a state description which includesstate variables for the technical system, with its Jacobi matrix beingused to solve the state description. Further, the state description hasat least one auxiliary function which is evaluated a number of timesrepeatedly in each simulation step.

A simulator, according to an embodiment of the invention, also has abuffer store in which values of calling parameters. The respectivelyassociated auxiliary result value of the auxiliary function is stored ina defined evaluation sequence in each case in one subarea of the bufferstore. In this case, on each repetition of the multiple evaluation, theauxiliary result value which is stored in this subarea is read by way ofa specific read access to a subarea of the buffer store, if the currentvalues of the calling parameters match the stored values of the callingparameters.

The specific read access may be provided, for example, by way of thesoftware pointer which has already been mentioned in conjunction with amethod according to an embodiment of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

Further advantages, features and details of the invention will becomeevident from the description of illustrated embodiments givenhereinbelow and the accompanying drawings, which are given by way ofillustration only and thus are not limitative of the present invention,wherein:

FIG. 1 shows a method according to an embodiment of the invention, and

FIG. 2 shows a simulator according to an embodiment of the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1 illustrates a method according to an embodiment of the inventionfor simulation of a technical system.

The technical system is described mathematically by the statedescription 30. It is evident from this state description 30 that thetechnical system in this example is a third-order system and, inconsequence, has three state variables x₁, x₂ and x₃.

The mathematical state description 30 of a technical system veryfrequently has an auxiliary function 25 which occurs repeatedly in thestate description 30 and is thus evaluated repeatedly during thesimulation of the technical system.

In the present example, the auxiliary function 25 occurs in two versionsin the state description 30, firstly with the state variables x₁ and x₂as its calling parameters s₁ and s₂, and secondly with the statevariables x₂ and x₃ as its calling parameters s′₁ and s′₂. The statevariable x₂ is in this case also multiplied by a time-dependent factor c(t).

The auxiliary function 25 may, for example, be a water/steam table,which has to be evaluated a number of times repeatedly in eachsimulation step during the simulation.

Many numerical solution algorithms which are run in particular oncomputers use the Jacobi matrix J to solve the state description 30. Themathematical representation 50 of this Jacobi matrix 6 is shown by wayof example in FIG. 1. The elements of the Jacobi matrix J are thepartial derivatives of the state equations which form the statedescription 30, on the basis of the state variables x₁, x₂ and x₃.

Numerically, derivatives are approximated by way of so-called differencequotients by calculating the function value for a current value of astate variable, then slightly varying the value of the state variable,and once again calculating the function value which results from thevariation of the state variable. The value of the partial derivative tobe determined is then approximated by the difference between thepreviously mentioned function values divided by the difference betweenthe state variable and the varied state variable.

A dynamic diagram 5, which corresponds to a visualization of the statedescription 30 of a technical system, shows in particular the signalflows which occur during a simulation of the technical system.

Since the example in FIG. 1 is a third-order technical system, thedynamic diagram 5 in consequence has three integrators 15, at whoseoutputs the state variables x₁, x₂ and x₃ are produced. Corresponding tothe mathematical representation of the state description 30, adders 10,multipliers 20 and two function blocks for the auxiliary function 25 arealso provided in the dynamic diagram 5.

Thus, in the present example, the auxiliary function 25 is evaluatedtwice during one run through the dynamic diagram; first of all with thecalling parameters s₁ and s₂, and secondly with the calling parameterss′₁ and s′₂. In this example, the state variables x₁ and x₂,respectively, correspond to the calling parameters s₁ and s₂, and thestate variables x₂ and x₃, respectively, correspond to the callingparameters s′₁ and s′₂, with the state variable x₂ being multiplied bythe time-dependent factor c (t).

The dynamic diagram 5 is run through repeatedly in each simulation step,and the auxiliary function 25 is evaluated twice during each repetition.The repeated runs through the dynamic diagram 5 are due to the fact thatthe values of the state variables x₁, x₂ and x₃ are varied by amagnitude value, in particular a small magnitude value, successively byway of a numerical algorithm in order to determine the elements of theJacobi matrix J for one simulator step and the dynamic diagram 5 is thenrun through again. This is necessary in order to determine thedifference quotients which have already been mentioned above.

In consequence, in the example shown in FIG. 1, the dynamic diagram 5 isrun through four times during one simulation step; during the first run,the state description 30 is evaluated using the current values for statevariables x₁, x₂ and x₃ and of the other parameters, and one statevariable is varied slightly in each of the three subsequent runs, withthe values of the other state variables in each case being fixed.

It can thus easily be seen that the auxiliary function 25 is evaluatedtwice during each run through the dynamic diagram 5, that is to say atotal of eight evaluations of the auxiliary function 25 are carried outduring one simulation step.

In the method according to an embodiment of the invention, animprovement is achieved in the simulation in comparison with the knownmethods. In particular, this is true with regard to the computation timerequired. Thus, the auxiliary result values H₁ and H₂ are not alwaysrecalculated during the run through the dynamic diagram 5 in which oneof the state variables x₁, x₂ and x₃ is in each case varied. Instead ofthis, the stated auxiliary result values are read from a buffer store35, when the current values of the calling parameters s₁ and s₂ as wellas s′₁ and s′₂ match the calling parameters which are stored in thebuffer store 35.

During the simulation of technical systems, such reading from the bufferstore 35 may in general be carried out very frequently instead ofcalculating the respective auxiliary result values H₁ and H₂, sincetechnical systems can often be described by way of a state description30 which includes one auxiliary function 25 repeatedly, and with itsauxiliary function depending in particular on only some of the statevariables x₁, x₂ and x₃. When one state variable is varied in order todetermine one element in the Jacobi matrix J, only those auxiliaryresult values H₁ and H₂ whose associated calling parameters s₁ and s₂,as well as s′₁ and s′₂ which cover the varied state variable now change.If, by way of example, the state variable x₁ is varied and a run thentakes place through the dynamic diagram 5, then, during this run, onlythe auxiliary result value H₁ changes and not the auxiliary result valueH₂. This occurs since only the calling parameters s₁ and s₂ have changedas a consequence of the variation of x₁, while the calling parameterss′₁ and s′₂ have not changed.

The auxiliary result value H₂ has thus already been calculated in theprevious run through the dynamic diagram 5 and can be read from thebuffer store 35, since the current values of the calling parameters s′₁and s′₂ are identical to the stored values of the calling parameters s′₁and s′₂ after the variation of the state variable x₁. During therecalculation of the auxiliary result value H₁, the correspondingcalling parameters as well as the (new) auxiliary result value H₁ may bestored in the buffer store 35. In this case, the (old) auxiliary resultvalue H₁, which corresponded to H₁ before the recalculation, as well asits (old) calling parameters can be overwritten by the new values.

In order to allow the buffer store 35 to be read in a specific manner,it is possible, for example, to use a pointer 40 which points at thatmemory entry in the buffer store 35 which corresponds to the currentevaluation of the auxiliary function 25.

The repeated evaluation of the auxiliary function 25 advantageouslytakes place during one run through the dynamic diagram 5 in a definedevaluation sequence, such that the memory entries in the buffer store 35are stored in precisely this sequence, and the pointer 40 points on thebasis of the evaluation sequence to that memory entry in the bufferstore 35 which corresponds to the current evaluation.

In the present example, the buffer store 35 has two memory entries,respectively comprising the values for the calling parameters s₁, s₂ ands′₁, s′₂ and the respective auxiliary result value H₁ or H₂. There aretherefore advantageously precisely the same number of memory entries inthe buffer store 35 as the number of times the auxiliary function 25 isevaluated during one run through the dynamic diagram 5. By setting thepointer 40 to that memory entry which corresponds to the currentevaluation of the auxiliary function 25, it is possible to specificallyaccess one memory entry in the buffer store 35 without having to searchthrough the buffer store 35 during the comparison of the current valueswith the stored values of the calling parameters.

Thus, in the method according to an embodiment of the inventionillustrated in FIG. 1, the auxiliary function is evaluated repeatedly onthe basis of a dynamic diagram 5 which represent the technical system,and the values of the respective calling parameters s₁, s₂, s′₁, s′₂ ofthe auxiliary function 25 and of the respectively associated auxiliaryresult value H₁, H₂ for each evaluation are stored in a buffer store 35.The current value of one state variable x₁, x₂, x₃ is in each casevaried successively, in particular by a small magnitude value, whilekeeping the values of the other state variables constant, and theauxiliary function 25 is evaluated repeatedly once again on the basis ofthe dynamic diagram 5.

Each evaluation process includes a calculation of the respectiveauxiliary result value H₁, H₂, if the values of the calling parameterss₁, s₂, s′₁, s′₂ of the current evaluation do not match the values ofthe calling parameters s₁, s₂, s′₁, s′₂ stored in the buffer store 35.It further includes reading of the auxiliary result value H₁, H₂ whichis associated with the values of the calling parameters for the currentevaluation from the buffer store 35 when the values of the callingparameters for the current evaluation match the values of the callingparameters which are stored in the buffer store 35. The Jacobi matrix Jis determined by means of the calculated auxiliary result values H₁, H₂and/or those read from the buffer store 35.

The specification of a method according to an embodiment of theinvention is dependent on the discovery that a technical system canoften be described by a state description 30 which includes oneauxiliary function repeatedly. Furthermore, for the method according toan embodiment of the invention, the discovery is important that, in thecase of technical systems, the auxiliary function 25 which is includedrepeatedly in the state description 30 generally depends on only some ofthe state variables x₁, x₂ and x₃, so that, when determining thedifference quotients in order to determine the elements of the Jacobimatrix J by way of successive variation of the state variables x₁, x₂and x₃, at least some of the auxiliary result values of the auxiliaryfunction 25 often do not change during the repeated evaluation duringone run through the dynamic diagram 5, when the calling parameters whichare associated with the current evaluation of the auxiliary function 25are not affected by the variation of one state variable.

The discoveries mentioned above relating to the stated typicalcharacteristics of technical systems are neither disclosed in norobvious from the prior art.

FIG. 2 shows a simulator 60 according to an embodiment of the inventionfor simulation of a technical system in a number of simulation steps.

The technical system is described by a state description 30. This mayinclude state variables x₁, x₂ and x₃ for the technical system and withits Jacobi matrix J being used to solve the state description, and withthe state description 30 having at least one auxiliary function 25,which is evaluated a number of times repeatedly in each simulation step.The simulator 60 according to an embodiment of the invention, has abuffer store 35 in which values of calling parameters s₁, s₂, s′₁, s′₂and the respectively associated auxiliary result value H₁, H₂ of theauxiliary function 25 are stored in a defined evaluation sequence R in arespective subarea 35 a, 35 b of the buffer store. In this case, duringeach repetition of the multiple evaluation, a specific read access L ismade to one of the subareas 35 a, 35 b of the buffer store 35 in orderto read the auxiliary result value H₁, H₂ which is stored in thissubarea, provided that the current values of the calling parameters s₁,s₂ and s′₁, s′₂, respectively, match the stored values of the callingparameters s₁, s₂ and s′₁, s′₂, respectively.

The explanation that has been given with regard to the method accordingto an embodiment of the invention can be applied in an analogous mannerto the simulator 60 according to an embodiment of the invention, andwill therefore not be repeated here.

Exemplary embodiments being thus described, it will be obvious that thesame may be vaired in many ways. Such variations are not to be regardedas a departure from the spirit and scope of the present invention, andall such modifications as would be obvious to one skilled in the art areintended to be included within the scope of the following claims.

1. A method for simulation of a technical system, described by a statedescription including state variables and a Jacobi matrix, wherein thestate description includes at least one auxiliary function to beevaluated, the method comprising evaluating the at least one auxiliaryfunction least two times corresponding to a dynamic diagram representingthe technical system; storing values of the respective callingparameters of the at least one auxiliary function and storing therespectively associated auxiliary result value for each evaluation;varying a current value of each state variable, successively, by amagnitude value while maintaining values of the other state variablesconstant; evaluating the at least one auxiliary function at least twomore times on the basis of the dynamic diagram, wherein each evaluationincludes, calculating the respective auxiliary result value if thevalues of the calling parameters of the current evaluation do not matchthe values of the stored calling parameters, and reading the auxiliaryresult value associated with the values of the calling parameters of thecurrent evaluation from storage if the values of the calling parametersfor the current evaluation match the values of the stored callingparameters stored; and determining the Jacobi matrix from the auxiliaryresult values obtained.
 2. The method as claimed in claim 1, wherein anumber of values of the calling parameters and the respectivelyassociated auxiliary result value are stored, with this numbercorresponding to the number of evaluations of the auxiliary functioncarried out on the basis of the dynamic diagram.
 3. The method asclaimed in claim 2, wherein the multiple evaluation of the auxiliaryfunction is carried out in a defined evaluation sequence.
 4. The methodas claimed in claim 3, wherein the number of values of the callingparameters and the associated auxiliary result value are stored in abuffer store in a sequence corresponding to the defined evaluationsequence.
 5. The method as claimed in claim 4, wherein for each multipleevaluation of the auxiliary function, the current values of the callingparameters are compared with the corresponding values of the callingparameters stored in the buffer store.
 6. A simulator for simulation ofa technical system in a number of simulation steps, the technical systembeing described by a state description including state variables for thetechnical system and a Jacobi matrix, wherein the state descriptionincludes at least one auxiliary function to be evaluated, the simulatorcomprising: a buffer store, adapted to store values of callingparameters and the respectively associated auxiliary result value of theauxiliary function in a defined evaluation sequence in each case onesubarea of the buffer store, wherein, on each repetition of the multipleevaluation, the auxiliary result value stored in a subarea is read by aspecific read access to that subarea of the buffer store, if the currentvalues of the calling parameters match the stored values of the callingparameters.
 7. A device for simulation of a technical system, describedby a state description including state variables and a Jacobi matrix,wherein the state description includes at least one auxiliary functionto be evaluated, the method comprising: means for evaluating the atleast one auxiliary function at least two times corresponding to adynamic diagram representing the technical system; means for storingvalues of the respective calling parameters of the at least oneauxiliary function and storing the respectively associated auxiliaryresult value for each evaluation; means for varying a current value ofeach state variable, successively, by a magnitude value whilemaintaining values of the other state variables constant, wherein themeans for evaluating evaluates the at least one auxiliary function atleast two more times on the basis of the dynamic diagram, wherein eachevaluation includes, calculating the respective auxiliary result valueif the values of the calling parameters of the current evaluation do notmatch the values of the stored calling parameters, and reading theauxiliary result value associated with the values of the callingparameters of the current evaluation from storage if the values of thecalling parameters for the current evaluation match the values of thestored calling parameters stored; and means for determining the Jacobimatrix from the auxiliary result values obtained.
 8. The device asclaimed in claim 7, wherein a number of values of the calling parametersand the respectively associated auxiliary result value are stored, withthis number corresponding to the number of evaluations of the auxiliaryfunction carried out on the basis of the dynamic diagram.
 9. The deviceas claimed in claim 8, wherein the multiple evaluation of the auxiliaryfunction is carried out in a defined evaluation sequence.
 10. The deviceas claimed in claim 9, wherein the number of values of the callingparameters and the associated auxiliary result value are stored in abuffer store in a sequence corresponding to the defined evaluationsequence.
 11. The device as claimed in claim 10, wherein for eachmultiple evaluation of the auxiliary function, the current values of thecalling parameters are compared with the corresponding values of thecalling parameters stored in the buffer store.